﻿// 寻根问祖 FAMILYTREE.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>

/*
https://algospot.com/judge/problem/read/FAMILYTREE

问题

"촌수"是一个表示亲属关系的远近程度的数字，据称在高丽时代进入并定居于朝鲜时代。计算"촌수"的方法是以父母和子女之间为1촌为基础。两个人的"촌수"表示需要多少次跟踪他们的父母子女关系才能连接起来。例如，兄弟姐妹共享同一对父母，因此是2촌。祖父母的孩子，即父母的兄弟姐妹，也是按照这个原理计算，所以是3촌。

给定某个家族从始祖开始的族谱，编写一个程序来计算两个人的"촌수"。

输入
输入的第一行包含测试用例的数量C（1 <= C <= 50）。每个测试用例由一个家族的族谱和要计算"촌수"的一对人组成。

每个测试用例的第一行包含族谱中包含的人数N（1 <= N <= 100,000）和要计算"촌수"的两个人的数量Q（1 <= Q <= 10,000）。这些人在族谱中的编号从0到N-1，并且0号总是这个家族的始祖。测试用例的第二行包含N-1个整数，表示从1到N-1的每个人的父亲的编号。然后是Q行，每行包含两个整数a和b（0 <= a,b < N），表示要计算"촌수"的两个人的编号。

族谱中不包含非始祖的后代，并且不会出现矛盾的输入，比如一个人成为自己的祖先等。

由于输入规模较大，请尽可能快地使用适当的输入函数。

输出
对于每对人，每行输出两个人的"촌수"。

示例输入
1
13 5
0 1 1 3 3 0 6 0 8 9 9 8
2 7
10 11
4 11
7 7
10 0

示例输出
4
2
6
0
3

注释
以下图表示了示例输入。
*/
int main()
{
    std::cout << "Hello World!\n";
}

 